문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 동영상 인코더 (문단 편집) === CPU (소프트웨어) 인코딩 === 오롯이 소프트웨어로 짜여진 로직에 의해서 범용 연산장치([[CPU]])로만 수행되는 인코딩으로서 후술될 "GPU/하드웨어(가속) 인코딩"이 나온 이후로 편의상 "CPU/소프트웨어 인코딩"이라고 부른다. CPU 성능에 절대적으로 의존하기 때문에 고성능 [[CPU]]에서 구동하는 것이 좋다. '인코딩은 닥치고 클럭 빨'이라는 말이 나올 정도로 CPU 성능에 따라 인코딩 퍼포먼스가 크게 좌우된다. 일차적으로 고클럭(빠른 연산)이 중요하며, 성능유지력(저발열, 저 스로틀링) 역시 중요하나 후자는 쿨러(사제쿨러, 수랭쿨러)로 해결이 가능한 편이다.[* 이 때문에 노트북보다 데스크탑에서 인코딩을 하는 것이 더 낫다.] [[멀티코어 프로세서]]가 대세가 된 이후로 CPU 코어 개수 역시 중요하다. 그저 다다익선. 단 이 경우 코덱 라이브러리와 인코더 프로그램이 멀티코어를 지원해주어야 한다.[* 현재는 대다수 프로그램이 멀티코어를 지원한다. 과거 멀티코어 초창기에는 멀티코어를 제대로 활용하지 않는 앱들이 많았고, 인코더가 멀티코어를 제대로 자원하지 않는다면 코어 하나만 일하고 나머지는 놀아서 코어빨은 의미가 없었다.] x264, x265는 대표적인 코덱 라이브러리로서 CPU 인코딩을 할 때 흔히 사용된다.[* 이것이 하드웨어 가속을 지원하면서 x264(QSV)처럼 별도의 선택지가 생겼지만, 일단 기본적으로 시작은 소프트웨어 인코딩이다.] 이외 xvid, vp9, av1 등이 있고, 자세한 내용은 [[코덱]] 참고. 세상에 다양한 인코더가 있지만, 무료로 사용하는 인코더는 사실상 대부분 [[FFmpeg]]를 기반으로 한다. 무료 동영상 인코더에 FFmpeg에서 지원하는 기능이 없을 수 있어도 FFmpeg에 없는 기능을 보유하는 경우는 없다. 개발이 중단되거나 업데이트가 게으른 무료 동영상 인코더는 구버전의 FFmpeg을 이용하는 경우도 종종 있어 멀티코어 프로세서를 지원하지 않거나, 고전 시절에 최적화되었었던 프리셋을 사용하는 등 시스템 자원은 더 먹으면서 결과물은 더 안 좋은 상황을 일으키기도 한다. 이에 따라 전문 인코더(사람)들은 [[FFmpeg]]의 기본적인 명령어와 [[배치파일]] 짜는 방법을 익혀 [[FFmpeg]]를 사용하기도 한다. [[FFmpeg]]가 [[CLI]] 환경만 지원하므로 접근성이 떨어져 진입장벽이 높다는 문제가 있지만, 잘 사용한다면 유료 동영상 인코더를 쓰는 것보다 나을 수도 있다.[* GPU 제조회사들이 FFmpeg과 협업을 하는 등 동영상 인코딩계에서 FFmpeg의 영향력은 막강하기 때문에, 인코더의 사실상 표준 지위라 봐도 무방하다.] 소프트웨어 인코더의 가장 큰 장점은 시간이 지나면 버전업이 된다는 것이다.[* 후술할 하드웨어 인코딩(GPGPU, 인코딩 칩셋)은 버전업을 하려면 장비를 교체해야 한다.] 초반에는 옵션이 빈약했을지라도, 몇 년 지나면 다양한 옵션을 제공하여 상황에 맞춰 효율적인(주로 저용량 고화질) 인코딩을 할 수 있게 해준다. 최신코덱을 사용하려면 CPU 인코딩을 사용할 수 밖에 없다. 최신 코덱이 발표되면 소프트웨어 인코더/코덱에 먼저 반영이 되고, 하드웨어로 이를 지원하는 것은 "칩 설계, 최적화, 칩 제조"등의 과정을 거치며 몇 년의 시간이 흘러야 하기 때문이다.[* 물론 이래나 저래나 최신코덱은 제대로 쓰기 어렵다. CPU 인코딩 속도가 처참하게 느릴 것이 자명하기 때문이다(...)] 저용량 고화질의 영상을 만들기 위해서는 CPU 인코딩을 선택해야 한다. 일례로 동영상 옵션에 "B-Frame"이 있다.[* I-frame은 동영상 캡쳐 이미지 같은 온전한 사진, P-frame은 선행 프레임에서 변화된 픽셀정보만 담은 프레임, B-frame은 선후 프레임에서 변화된 픽셀정보만 담은 프레임. 이 정보량 차이로 인해 I-frame은 용량이 큰 반면에 B-frame은 용량이 적다.] B-frame은 앞 뒤 프레임의 정보를 읽어들여 픽셀이 움직이는 크기와 방향을 계산을 해야 하기 때문에 많은 연산량이 요구되며, 인코딩/디코딩 속도를 저하시키게 된다. 대신 압축이 많이 되는만큼 용량 절약이나 화질 향상에 눈에 띄는 도움을 준다.[* 물론 정도껏 해야지, 극단적으로 가면 영상이 깨지면 답이 없어진다(...)] CPU인코딩에서는 이 옵션을 제공하지만, GPU 인코딩에서는 이 옵션을 제공하지 않는다. 물론 절대적인 진리는 아니며, 하드웨어가속기(GPU 등)가 이를 지원해주면 하드웨어 가속으로도 저용량 고화질의 영상을 만들 수 있지만, 그래픽카드 제조사가 그런 제품을 내놓지 않는다(...) 하드웨어 가속기의 존재 이유는 "빠른 속도 달성"이기 때문에 속도향상에 방해되는 옵션들은 다 떼어버리고 트랜지스터를 박아버리기 때문이다. 그래서 압축은 덜 하고 화질은 떨어지는 경향이 보인다. 하드웨어 가속기 제조사들은 나중에 미세공정의 도움으로 칩셋에 여유공간이 장만되었을 때, 그제서야 화질 향상에 도움되는 트랜지스터 회로를 넣어주는 듯 하다. 장비를 갖추지 못해 하드웨어 가속을 할 수 없어도, 옵션을 낮춰 인코딩을 하면 빠른 속도로 인코딩을 할 수 있다. 최고의 선택지는 아닐지언정 선택지가 다양하다는 점은 CPU 인코딩의 장점이다. 화질을 보존해야 할 필요성이 크지만 용량을 절약해야 할 필요성이 적은 상황(하드를 살 돈이 빵빵한 상황), 즉 직업으로 동영상을 다루는 사람들이 사용하는 코덱들은 CPU 기반 인코딩만을 지원하는 경우가 많다. [[ProRes]]나 DNxHD, DNxHR 등 Intermediate Codec이라 불리는 편집용 코덱들의 경우가 그러하다. 압축률이 적다면 CPU 부담이 적어 GPU 등 하드웨어 가속의 도움을 받을 필요성이 줄어들고, 한편으로는 버전업 된 효율적인 최신 기술을 사용하기에도 좋기 때문이다. 물론 하드웨어 가속을 배제해야만 하는 이유는 없기에 어느정도 기술이 성숙되면 하드웨어 가속기 제품이 출시되기도 하며, [[ProRes]]의 경우 Apple Afterburner라는 전용 하드웨어로도 인/디코딩 가속이 가능하다. CPU 인코더의 단점은 오로지 느린 속도. 동영상 인코딩은 일정 패턴이 있고[* 좌로이동, 우로이동, 위로이동, 아래로 이동, 우회전, 좌회전 이런 패턴에서 크게 벗어나지 않는다. 순간이동 하는 존재가 없다면.] 시간별로 영역별로 쪼개서 분업화를 하기 좋은 프로세싱이기 때문에 [[CPU|능력이 쩔지만 손이 적은 애]] 대신 [[GPU|능력이 평범하지만 손이 많은 애]]에게 맡기기 시작한다. 이에 따라 [[GPGPU]] 기술이 발전하였고, 자주 쓰는 코덱이 한두개(H.264, H.265)밖에 없다면 이를 하드웨어로 찍어서 이 업무만 전담하게 만들어보기 시작한다. 이를 통틀어 하드웨어 가속이라 칭한다.(자세한 내용은 후술.) [[GPGPU|GPU를 이용하는]] 인코딩 프로그램도 있으며 그 인코딩 속도는 CPU 따위 저리가라 할 정도로 빠르다. [[CPU]]는 서버용이래봐야 칩 하나당 코어가 64개지만(2019년 기준), [[GPU]]는 칩 하나에 그래픽 전용 병렬연산 코어가 요즘 기준으로 '''최소 수 백개, 최대 수 천개나 들어가는 매니코어 프로세서이다.''' 하지만 GPU를 이용하면 [[OpenGL]] 기반 인코더를 사용하는 경우에는 화질이 떨어진다고 한다. OpenGL이 3D 그래픽 처리용 라이브러리라 정밀도는 신경을 안 쓰기 때문. [[OpenCL]] 혹은 [[CUDA]] 기반은 이론상으로 품질이 떨어지지 않는다. 반면에 동영상 디코딩 시에는 [[GPU]]를 사용하는 것이 이득이다 ([[DXVA]]를 이용하는 [[NVIDIA PureVideo]]와 AMD [[UVD]], [[VCN]]의 디코딩 영역, 인텔의 퀵 싱크 비디오 등). 업무용 인코더의 경우는 별도의 하드웨어 인코더가 장착된 가속장비와 영상입출력 인터페이스를 내장한 형태로 카메라나 VCR 등에서의 입력을 실시간으로 압축하여 파일 형태로 보관하게 된다. 대개의 경우 영상의 재편집이나 납품의 특정한 포맷을 위한 경우가 많다. 여기서 더 발전된 형태로는 스트리밍 기능을 부여하여 생방송용 장비로 운용된다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기